docs: add 1600-style brutalist motion template#101
Open
LeadcodeDev wants to merge 3 commits into
Open
Conversation
Custom/Google fonts declared in a scenario's `fonts` were downloaded and handed to Skia via `FontMgr::new_from_data`, but that call returns a detached Typeface and never exposes it to `match_family_style` — Skia's default FontMgr only name-resolves installed system fonts. So every `font-family` pointing at a declared font silently rendered in the Helvetica/Arial fallback (e.g. Anton came out as a generic sans-serif). Keep the raw bytes in a global family->bytes registry when loading, and have `typeface_with_fallback` resolve custom families from it first — building and caching the Typeface per render thread (the FontMgr is thread-local, so system-thread registration alone never reached the rayon render workers). One weight per custom family via this path; multi-weight custom families are follow-up. Tests: registry stores first-wins + serves bytes; a registered family resolves to its own typeface over the system fallback (uses the cached Anton TTF when present, skips on a cold cache).
A 21s, 6-scene reference scenario (examples/1600-style.json) in the style of motion studios like 1600.agency: full-bleed saturated colour blocks that hard-cut between scenes, oversized Anton grotesque type, kinetic entrances (slide/scale with stagger), animated counters, and directional wipe transitions. Plus a skill rule documenting the visual language so the look can be reproduced on any content. Depends on the custom-font fix (declared Anton must actually render).
Address the '2D slideshow' feel: every scene now plays on space instead of being a flat panel. - continuous camera per scene (keyframed zoom + focal origin drift, and a subtle roll on two scenes) — no more static frames - three parallax planes via style.depth on scene direct children: a deep tone-on-tone ghost word (~0.4), the content (1.0), floating foreground accents (~1.75) — planes separate as the camera moves - 3D rotational entrances (flip_in_x/y, tilt_in with perspective and a hinge transform-origin) instead of flat slides; they resolve face-on so the type stays legible - camera-roll bleed avoided by keeping a covering zoom during rotation (documented in the style rule) Rule updated with the depth/camera layer.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A reference scenario + skill rule for producing videos in the style of motion studios like 1600.agency: full-bleed saturated colour blocks that hard-cut between scenes, oversized Anton grotesque type, kinetic entrances, animated counters, and directional wipe transitions.
examples/1600-style.json— 21s, 6 scenes, 1920×1080. Yellow hero → black studio title → cobalt counters → coral services → acid-green manifesto → black CTA..claude/skills/rustmotion/rules/1600-brutalist-style.md— documents the visual language (palette, type scale, animation patterns, per-scene skeleton) so the look is reproducible on any content — the "reusable template" ask.Notes
Preview
6 stills reviewed during authoring: massive yellow hook, black studio title with yellow accent word, kinetic counters (30 / +120 / x3), stacked coral service list, green manifesto, black CTA with underline + accent email.